package com.deyuanyun.pic.pbf.app.domain;

import com.alibaba.fastjson.annotation.JSONField;
import com.deyuanyun.pic.common.util.StringUtils;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description 防腐层修复Dto
 * @author Jerry
 * @date 2016-07-14
 */
public class CoatingRepairDto extends BaseDTO {
    /**
     * 主键
     */
    private String id;

    /**
     * 创建时间
     */
    private Date createDate;

    /**
     * 创建人
     */
    @JSONField(name ="UserID")
    private String createUser;

    /**
     * 创建备注
     */
     @JSONField (name ="Remark")
    private String createRemark;

    /**
     * 更新时间
     */
    private Date updateDate;

    /**
     * 更新人员
     */
    private String updateUser;

    /**
     * 更新原因
     */
    private String updateRemark;

    /**
     * 逻辑删除字段
     */
    private Short deleted;

    /**
     * 版本
     */
    private Short vsersion;

    /**
     * 管沟ID
     */
    @JSONField(name ="ProcessID")
    private String trenchId;

    /**
     * 是否为补口：是，否
     */
    @JSONField(name ="JoinID")
    private String isJoint;

    /**
     * 管表温度（℃）
     */
    @JSONField(name ="SurfaceTemperature")
    private BigDecimal surfaceTemperature;

    /**
     * 环境温度（℃）
     */
    @JSONField(name ="EnvTemperature")
    private BigDecimal environmentalTemperature;

    /**
     * 修复材料：粘弹体+压敏胶热收缩带；粘弹体+外保护带；粘弹体+热收缩带/套；压敏胶热收缩带；热收缩带/套；无溶剂环氧；聚氨酯；聚乙烯冷缠胶带；聚丙烯冷缠胶带；热熔胶+补伤片；粘弹体+补伤片；其他；未知
     */
    @JSONField(name = "MaterialID")
    private String repairMaterial;

    /**
     * 修复长度
     */
    @JSONField(name ="Length")
    private BigDecimal repairLength;

    /**
     * 厚度（mm）
     */
    @JSONField(name ="Thick")
    private BigDecimal repairThickness;

    /**
     * 工作量
     */
    @JSONField(name ="WorkLoad")
    private String workload;

    /**
     * 修复材料厂商
     */
    @JSONField(name ="MaterialManufacturer")
    private String materialManufacturer;

    /**
     * 电火花检漏(电压)
     */
    @JSONField(name ="Voltage")
    private BigDecimal edmLeak;

    /**
     * 记录人
     */
    private String recrder;

    /**
     * 记录时间
     */
    private Date recordTime;

    /**
     * @return 主键
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     *            主键
     */
    public void setId(String id) {
        this.id = id == null ? null : id.trim();
    }

    /**
     * @return 创建时间
     */
    public Date getCreateDate() {
        return createDate;
    }

    /**
     * @param createDate
     *            创建时间
     */
    public void setCreateDate(Date createDate) {
        this.createDate = createDate;
    }

    /**
     * @return 创建人
     */
    public String getCreateUser() {
        return createUser;
    }

    /**
     * @param createUser
     *            创建人
     */
    public void setCreateUser(String createUser) {
        this.createUser = createUser == null ? null : createUser.trim();
    }

    /**
     * @return 创建备注
     */
    public String getCreateRemark() {
        return createRemark;
    }

    /**
     * @param createRemark
     *            创建备注
     */
    public void setCreateRemark(String createRemark) {
        this.createRemark = createRemark == null ? null : createRemark.trim();
    }

    /**
     * @return 更新时间
     */
    public Date getUpdateDate() {
        return updateDate;
    }

    /**
     * @param updateDate
     *            更新时间
     */
    public void setUpdateDate(Date updateDate) {
        this.updateDate = updateDate;
    }

    /**
     * @return 更新人员
     */
    public String getUpdateUser() {
        return updateUser;
    }

    /**
     * @param updateUser
     *            更新人员
     */
    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser == null ? null : updateUser.trim();
    }

    /**
     * @return 更新原因
     */
    public String getUpdateRemark() {
        return updateRemark;
    }

    /**
     * @param updateRemark
     *            更新原因
     */
    public void setUpdateRemark(String updateRemark) {
        this.updateRemark = updateRemark == null ? null : updateRemark.trim();
    }

    /**
     * @return 逻辑删除字段
     */
    public Short getDeleted() {
        return deleted;
    }

    /**
     * @param deleted
     *            逻辑删除字段
     */
    public void setDeleted(Short deleted) {
        this.deleted = deleted;
    }

    /**
     * @return 版本
     */
    public Short getVsersion() {
        return vsersion;
    }

    /**
     * @param vsersion
     *            版本
     */
    public void setVsersion(Short vsersion) {
        this.vsersion = vsersion;
    }

    /**
     * @return 管沟ID
     */
    public String getTrenchId() {
        if(StringUtils.isNotEmpty(getProjectId())){
            return trenchId;
        }
       return null;
    }

    /**
     * @param trenchId
     *            管沟ID
     */
    public void setTrenchId(String trenchId) {
        this.trenchId = trenchId == null ? null : trenchId.trim();
    }

    /**
     * @return 是否为补口：是，否
     */
    public String getIsJoint() {
        return isJoint;
    }

    /**
     * @param isJoint
     *            是否为补口：是，否
     */
    public void setIsJoint(String isJoint) {
        this.isJoint = isJoint == null ? null : isJoint.trim();
    }

    /**
     * @return 管表温度（℃）
     */
    public BigDecimal getSurfaceTemperature() {
        return surfaceTemperature;
    }

    /**
     * @param surfaceTemperature
     *            管表温度（℃）
     */
    public void setSurfaceTemperature(BigDecimal surfaceTemperature) {
        this.surfaceTemperature = surfaceTemperature;
    }

    /**
     * @return 环境温度（℃）
     */
    public BigDecimal getEnvironmentalTemperature() {
        return environmentalTemperature;
    }

    /**
     * @param environmentalTemperature
     *            环境温度（℃）
     */
    public void setEnvironmentalTemperature(BigDecimal environmentalTemperature) {
        this.environmentalTemperature = environmentalTemperature;
    }

    /**
     * @return 修复材料：粘弹体+压敏胶热收缩带；粘弹体+外保护带；粘弹体+热收缩带/套；压敏胶热收缩带；热收缩带/套；无溶剂环氧；聚氨酯；聚乙烯冷缠胶带；聚丙烯冷缠胶带；热熔胶+补伤片；粘弹体+补伤片；其他；未知
     */
    public String getRepairMaterial() {
        return repairMaterial;
    }

    /**
     * @param repairMaterial
     *            修复材料：粘弹体+压敏胶热收缩带；粘弹体+外保护带；粘弹体+热收缩带/套；压敏胶热收缩带；热收缩带/套；无溶剂环氧；聚氨酯；聚乙烯冷缠胶带；聚丙烯冷缠胶带；热熔胶+补伤片；粘弹体+补伤片；其他；未知
     */
    public void setRepairMaterial(String repairMaterial) {
        this.repairMaterial = repairMaterial == null ? null : repairMaterial.trim();
    }

    /**
     * @return 修复长度
     */
    public BigDecimal getRepairLength() {
        return repairLength;
    }

    /**
     * @param repairLength
     *            修复长度
     */
    public void setRepairLength(BigDecimal repairLength) {
        this.repairLength = repairLength;
    }

    /**
     * @return 厚度（mm）
     */
    public BigDecimal getRepairThickness() {
        return repairThickness;
    }

    /**
     * @param repairThickness
     *            厚度（mm）
     */
    public void setRepairThickness(BigDecimal repairThickness) {
        this.repairThickness = repairThickness;
    }

    /**
     * @return 工作量
     */
    public String getWorkload() {
        return workload;
    }

    /**
     * @param workload
     *            工作量
     */
    public void setWorkload(String workload) {
        this.workload = workload == null ? null : workload.trim();
    }

    /**
     * @return 修复材料厂商
     */
    public String getMaterialManufacturer() {
        return materialManufacturer;
    }

    /**
     * @param materialManufacturer
     *            修复材料厂商
     */
    public void setMaterialManufacturer(String materialManufacturer) {
        this.materialManufacturer = materialManufacturer == null ? null : materialManufacturer.trim();
    }

    /**
     * @return 电火花检漏(电压)
     */
    public BigDecimal getEdmLeak() {
        return edmLeak;
    }

    /**
     * @param edmLeak
     *            电火花检漏(电压)
     */
    public void setEdmLeak(BigDecimal edmLeak) {
        this.edmLeak = edmLeak;
    }

    /**
     * @return 记录人
     */
    public String getRecrder() {
        return recrder;
    }

    /**
     * @param recrder
     *            记录人
     */
    public void setRecrder(String recrder) {
        this.recrder = recrder == null ? null : recrder.trim();
    }

    /**
     * @return 记录时间
     */
    public Date getRecordTime() {
        if(recordTime == null){
            return new Date();
        }
        return recordTime;
    }

    /**
     * @param recordTime
     *            记录时间
     */
    public void setRecordTime(Date recordTime) {
        this.recordTime = recordTime;
    }
}
